FIG. 1 depicts the elements that make up a typical computer for use in presenting and maintaining an application. The computer 100 consists of a Base Computer 101 which comprises a processor 106, storage media such as a magnetic disk 107 and a high speed volatile main memory 105. An operating system and application programs 111 reside on the storage media 107 and are paged into main memory 105 as needed for computations performed by the processor 106. The Base computer may include optional peripheral devices including a video display 102, a printer or scanner 110, a keyboard 104, a pointing device (mouse) 103 and a connection 108 to a network 109. In a client environment, a user will interact with a (Graphical User Interface) GUI by use of a keyboard 104 and mouse 103 in conjunction with the display of information on the display 102 under control of an application program (application 1) 112. The client application program 112 will then interact with remote users by way of the network 109.
In FIG. 2 an example Internet system is shown. A user at client 1 201 uses applications on his system. This user (user 1 210) at client 1 201 can interact with clients 2-4 202-204 by way of a client server computer 206. Applications 112 may be provided by each client 201-205 and or the client server 206 or some remote server 208 by way of the network 207. The user at client 1 201 can interact with a remote user (user 5 211) at client 5 205 by way of the Internet 207.
Recently, peer to peer (P2P) interconnection has become an interesting alternative. FIG. 3 shows an example P2P network 300 wherein Peer 1 301 can communicate with other peers directly. Each peer essentially includes client and server function. Thus, Peer 1 301 acts as a client in sending messages to Peer 2 302. Peer 2 performs some function as a result of receiving the message and may return a message to peer 1. Thus, peer 2 302 acts as a server for peer 1 301. P2P grids provide networked computers that cooperate to perform distributed computing.
Within any computing environment, authorization requests are often made for actions that could be easily determined by a group vote or poll. These requests are normally made to a ‘known’ authorization authority, usually a ‘real’ person. These requests are usually made in some defined workflow process, and are not ‘real-time’. Real-time is defined as any process which has an immediate request, processing and response workflow.
U.S. patent application Ser. No. 10/207,685 “INTERACTIVE ONE TO MANY COMMUNICATION IN A COOPERATING COMMUNITY OF USERS” Filed Jul. 26, 2002 assigned to IBM and incorporated herein by reference; provide a GUI interface at a user's terminal for interacting with a Pub/Sub service. In one embodiment, a user is permitted to publish instant messages to subscribers subscribing to a channel of the pub/Sub service. A channel is essentially a topic of interest to a sub group of subscribers. A channel might be set up for “Owners of MGB motor cars” for example while another channel might be set up for “Type 1 Diabetes medications”. In the prior art, each channel must be created manually. There has to be a need recognized for the new channel as well as other criteria including security, ownership and maintenance in order for a channel to be added or deleted. Once it is added it is available to be displayed at the user's GUI. Such a process is time consuming and relatively unstructured.
In certain situations, providing permission is a dynamic situation. For instance, an electronic group meeting might be convened (Chat room for instance) that requires different membership based on activity. The user not authorized to join the group might be invited the group but how might the group provide a temporary authorization since the not authorized user may be acceptable to some members but not to others. A method is needed to handle such cases.
For another example, creation of an electronic news forum is often discussed in a central discussion location, and if all (or a portion thereof) of the people involved agree on the name, then the information is passed to a third party for creation of the forum, the third party is a ‘real’ person with the authority to do so.
There is a need to automate and hasten this process to allow a group to come to a consensus on the name of the forum and provide the authorization prerequisites to an automated service capable of servicing the request. This service would have the security rights necessary to perform the specified request. There is an additional need to process these requests faster than is currently possible with email, web-based, or other asynchronous processes.